package com.smile.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.smile.model.dto.request.*;
import com.smile.model.response.response.GetAirportByIdResponseDTO;
import com.smile.model.response.response.GetAirportListResponseDTO;
import com.smile.model.response.response.GetDroneListResponseDTO;

import java.io.IOException;
import java.util.List;

/**
 * 机场相关service
 * @author 宁海博
 * @Date 2025/6/13
 */
public interface AirportService  {
    Boolean addAirport(AddAirportRequestDTO addAirportRequestDTO) throws IOException;

    Page<GetAirportListResponseDTO> getAirportList(GetAirportListRequestDTO getAirportListRequestDTO);
    List<GetAirportListResponseDTO> getAllAirportList(GetAirportListRequestDTO getAirportListRequestDTO);
    List<GetDroneListResponseDTO> getDroneList(GetAirportListRequestDTO getAirportListRequestDTO);

    Boolean editAirport(EditAirportRequestDTO editAirportRequestDTO) throws IOException;

    GetAirportByIdResponseDTO getAirportById(GetAirportByIdRequestDTO getAirportByIdRequestDTO);
    GetAirportByIdResponseDTO getAirportByGatewaySn(GetAirportByIdRequestDTO getAirportByIdRequestDTO);

    Boolean deleteAirport(Long id);
}
